Systems and methods for evaluating pitching performances

ABSTRACT

A computer system including instructions recorded on a non-transitory computer-readable storage medium and readable by at least one processor may include an input module, a data calculation module, and a display module. The input module is configured to receive an input associated with an athletic performance. The data calculation module is configured to evaluate the athletic performance. The display module is configured to provide a visual display associated with the evaluation of the athletic performance.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a Nonprovisional of, and claims priority to, U.S. Pat. Application No. 61/647,137, filed on May 15, 2012, entitled “SYSTEMS AND METHODS FOR EVALUATING PITCHING PERFORMANCES”, which is incorporated by reference herein in its entirety.

TECHNICAL FIELD

This description relates to the systems and methods for evaluating an athletic performance, such as a baseball pitching performance or a softball pitching performance.

BACKGROUND

Individual performances at athletic events, including individual performances within a team sport, can be difficult to monitor and track. For example, a pitching performance of an individual's pitching performance in a baseball or softball game may be difficult to monitor before and during a particular game. Additionally, it can be difficult to track or compare an individual's various pitching performances over a season, a year, or a career. In some cases, singular stats such as earned run average (ERA) and strikes to balls ratio may not provide sufficient detail to accurately evaluate a pitcher's performance.

Accordingly, there is a need for a system and a method for more effectively and efficiently evaluating a performance, such as a pitching performance, at an athletic event, such as a baseball game or a softball game.

SUMMARY

According to one general aspect, a computer system including instructions recorded on a non-transitory computer-readable storage medium and readable by at least one processor may include an input module, a data calculation module, and a display module. The input module is configured to receive an input associated with an athletic performance. The data calculation module is configured to evaluate the athletic performance. The display module is configured to provide a visual display associated with the evaluation of the athletic performance.

According to another general aspect, a computer-implemented method for causing at least one processor to execute instructions is recorded on a computer-readable storage medium. In some embodiments, the method includes receiving an input associated with an athletic performance; evaluating the athletic performance; and providing a visual display associated with the evaluation of the athletic performance,

According to another general aspect, a computer program product, the computer program product being tangibly embodied on a computer-readable medium and comprising instructions that, when executed, are configured to cause at least one processor to receive an input associated with an athletic performance; evaluate the athletic performance; and provide a visual display associated with the evaluation of the athletic performance.

The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system for evaluating an athletic performance according to an embodiment of the invention.

FIG. 2 is a display of an input module of the system of FIG. 1.

FIGS. 3-5 are schematic illustrations of the system of FIG. 1 and various input devices.

FIGS. 6 and 7 are example outputs of the system of FIG. 1.

FIG. 8 is a block diagram of a system for evaluating an athletic performance according to an embodiment of the invention.

FIG. 9 is a flow chart of a method according to an embodiment of the invention.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of a system 100 for evaluating an athletic performance. For example, the system 100 may be used to evaluate a performance of an individual during an athletic contest or competition. The system 100 may also be used to evaluate a series, such as a season or a career, of athletic performances. In one embodiment, the system 100 may be used to evaluate a performance of a pitcher during a baseball game. In another embodiment, the system 100 may be used to evaluate the performance of a pitcher during a softball game. In yet further embodiments, the system 100 may be used to evaluate other athletic performances within other types of sporting events.

In some embodiments, the system 100 is configured to receive an input or a set of inputs. The inputs may be data or other items related to an athletic performance of an individual. The system 100 is configured to compile and analyze the input or set of inputs. In some embodiments, the system 100 is configured to calculate or determine the success or the efficiency of the athletic performance. In some embodiments, the system 100 is configured to display or provide (e.g. trigger) a display of a statistic or series of statistics associated with the athletic performance. In some embodiments, the system 100 is configured to display or provide a display of an evaluation of the athletic performance.

The system 100 includes an input module 110, a data calculations module 120, and a display module 130. As described in more detail below, in some embodiments, the system also includes a transmission module.

The system 100 can be, or can be included within, for example, a client device and/or a server device. In some embodiments, the system 100 can be, or can be included within, for example, a wired device and/or a wireless device (e.g., wi-fi enabled device) and can be, for example, a computing entity (e.g., a personal computing device, such as a tablet device), a mobile phone, a personal digital assistant (PDA) and/or so forth. The system 100 can be configured to operate based on one or more platforms (e.g., one or more similar or different platforms) that can include one or more types of hardware, software, firmware, operating systems, runtime libraries, and/or so forth. In some embodiments, the system 100 can be integrated with other benefit processing applications (e.g., programs).

In some embodiments, the system 100 includes or is configured to operate in connection with a memory. The memory can be implemented as more than one memory component (e.g., more than one random-access memory (RAM) component or disk drive memory). In some embodiments, the memory can be, or can include, a non-local memory (e.g., a memory not physically included within the system 100) within a network (not shown). For example, the memory can be, or can include, a memory shared by multiple system upgrade modules (not shown) within a network.

Although not shown, the system 100 can be configured to operate within an environment that includes an operating system. In some embodiments, the operating system can be configured to facilitate the functions of the system 100.

In some embodiments, one or more portions of the components or modules of the system 100 illustrated in FIG. 1 can be, or can include, a hardware-based module (e.g., a digital signal processor (DSP), a field programmable gate array (FPGA), a memory), a firmware module, and/or a software-based module (e.g., a module of computer code, a set of computer-readable instructions that can be executed at a computer). For example, in some embodiments, one or more portions of the input module 110 can be, or can include, a software module configured for execution by at least one processor (not shown). Similarly, one or more portions of the data calculations module 120 or the display module 130 can be a software module configured for execution by at least one processor (not shown). In some embodiments, the functionality of the modules or components can be included in different modules and/or components than those shown in FIG. 1. For example, although not shown, the functionality of the input module 110 can be included in a different module than the input module 110, or can be divided into several different modules.

In some embodiments, the processor is a device that is configured to fetch instructions, to execute instructions and/or to access and communicate with a memory. In some embodiments, the processor is one of multiple processors in a system (e.g. system 100). In some embodiments, the processor is an FPGA and/or is incorporated into one of the modules.

In the illustrated embodiment, the input module 110 is operatively coupled to the data calculations module 120. The input module 110 is configured to receive an input. In some embodiments, the input module 110 is configured to receive an input related to or associated with an athletic performance.

The input module 110 may be configured to receive an input from a variety of sources. For example, in some embodiments, the input module 110 includes or is operatively coupled to an input device such as a keyboard, a touch screen, or another type of input device. In such embodiments, the input device 110 is configured to receive an input from a user via the input device.

In some embodiments, the input module 110 includes or is operatively coupled to a touch screen (not shown). The touch screen may be used to input or provide various pieces of information to the input module 110. For example, in some embodiments, the touch screen may be used to provide information regarding an athletic performance of an individual to the input module 110. In some embodiments, one or more displays of the system can include a touch sensitive display. In some embodiments, one or more of the displays can be, or can include, for example, an electrostatic touch device, a resistive touchscreen device, a surface acoustic wave (SAW) device, a capacitive touchscreen device, a pressure sensitive device, a surface capacitive device, a projected capacitive touch (PCT) device, and/or so forth.

In some embodiments, the touch screen (or other type of input device) may be used to input information about, regarding, or related to a pitching performance of an individual during a baseball or softball game. In some embodiments, the touch screen may be used to provide any of the following pieces of information to the input module 110: pitch location, pitch type, pitch speed or velocity, pitcher's delivery type (windup or stretch), outcome of pitch (such as a called strike, swinging strike, ball, or outcome of a batter's contact with the ball), and whether there was an attempt to pick off a runner taking a lead from an occupied base. Additionally, in some embodiments, information regarding how runners advance along the bases is also input or provided to the input module 110. For example in some embodiments, information regarding the movement or advancement of runners along the bases such as via a stolen base, a hit and run play, a sacrifice fly ball, or a sacrifice bunt may input or otherwise provided to the input module 110 of the system 100.

In some embodiments, all of the above information is provided to the input module 110 via the touch screen. In other embodiments, only some of the above information is provided to the input module 110 via the touch screen.

FIG. 2 is an illustration of a device with a touch screen 112 that may be used to provide information to the input device 110. The touch screen 112 may provide a grid or a representation of the strike zone 114 to facilitate the input of the information to the input module 110. For example, in some embodiments, the location of the pitch may be identified or provided using the grid or representation of the strike zone 114. In some embodiments, the touch screen 112 may be used to input the location of the pitch within the strike zone 114 and outside of the strike zone 114 (for example, by touching a location on the touch screen 112 outside of the strike zone grid 114).

In some embodiments, the input module 110 is configured to request information or provide a prompt to the user to provide more information based on the information that has been received by the input module 110. For example, if a user indicates that the pitch was a high and inside (using the grid or representation of the strike zone 114), then the input module 110 is configured to provide a prompt or an input box for the user to indicate the type of pitch. The input module 110 may also be configured to provide a prompt or input box for the user to indicate the outcome of the pitch (swinging strike, called strike, foul ball, ball put in play, etc.). In other embodiments, the input module 110 is configured to request other information based on the information regarding the pitch or the performance that has been provided to the input module 110.

In one embodiment, the input module 110 is configured to receive information regarding the location of a pitch. For example, as illustrated in FIG. 2, the location of the pitch may be identified or provided to the input module 110, via a touch screen that includes a pitch location grid. For example, a user may touch the screen on the pitch location grid to identify the pitch location. Once the user identifies the location of the pitch, the input module 110 provides a selection menu to identify the pitch type, such as a fast ball, a curve ball, a change-up, etc. Once the type of pitch is identified and selected by the user, the input module 110 provides a selection menu to identify the outcome of the pitch, such as a ball, a called strike, a swinging strike, a foul ball, a hit batter, or a ball put in play. If the ball is put in play, the input module 110 provides a selection menu to identify the type of hit that occurred, such as a ground ball, a hard ground ball, a fly ball, a line drive, or a bunt. This information allows the system 100 to store and/or determine how hard a ball was hit (many times a base hit may be a weakly hit ball and to accurately evaluate the performance of the pitcher it may be valuable to know whether the single was a line drive or a weak ground ball). Once the type of hit is identified and provided to the input module 110, the input module 110 provides a section menu to identify the outcome of the contact or hit ball, such as a single, a double, a triple, a homerun, an error, or a fielder's choice.

Based on the information that is provided to the input module 110, the system is configured to score or track the game. For example, in some embodiments, the score of the game is stored or recorded, the movement of the base runners is stored or recorded, and the hitting statistics for the hitters of each team's lineup are stored or recorded.

In some embodiments, the input module 110 is configured to receive input or information regarding an athletic performance from more than one input source. In some embodiments, the inputs sources are of a different input type. For example, in some embodiments, the input module 110 is configured to receive an input from a touch screen and from another input device.

As illustrated schematically in FIG. 3, in some embodiments, the input module 110 of the system 100 is configured to receive an input from an input device 190. In the illustrated embodiment, the input device 190 is a radar gun or device or other type of device that is configured to measure the speed or velocity of a pitch. The input device 190 is configured to measure the speed or velocity of a pitch and provide such information to the input module 110. In some embodiments, the input device 190 allows the system 100 to record and track the velocity of each pitch, the average velocity of each pitch type (for example, average velocity of a pitcher's fastball or curveball), velocity differential (the difference between the average velocities of different pitch types), and the average velocities by inning of the game.

In some embodiments, the input device 190 is wired to the system 100 and is configured to communicate or provide input information to the input module 110 via a wire. In other embodiments, the input device 190 is configured to wirelessly communicate with the system 100 and the input module 110. For example, in some embodiments, the input module 190 is configured to provide information to the input module 110 via a Bluetooth, an RF, or another wireless connection.

As illustrated schematically in FIG. 4, in some embodiments, the input module 110 of the system 100 is configured to receive an input from an input device 192. In the illustrated embodiment, the input device 192 is a stopwatch or other time keeping device. The stopwatch 190 is configured to provide times to the input module 110.

In some embodiments, the stopwatch 192 is wired to the system 100 and is configured to communicate or provide input information to the input module 110 via a wire. In other embodiments, the stopwatch 192 is configured to wirelessly communicate with the system 100 and the input module 110. For example, in some embodiments, the stopwatch 192 is configured to provide information to the input module 110 via a Bluetooth, an RF, or another wireless connection.

In some embodiments, the stopwatch 192 is configured to provide information or input to the input module 110 that is related or regarding an athletic performance of an individual. For example, in some embodiments, the stopwatch 192 is configured to provide time information to the input module 110. Specifically, in some embodiments, the stopwatch 192 is configured to provide the time that it takes for the pitcher to delivery a pitch to the batter (for example, when the pitcher is pitching out of a stretch). In other embodiments, the stopwatch 192 is configured to provide the time that it takes of the pitcher deliver or throw the ball to first base (for example, in an attempt to pick off a base runner).

As illustrated schematically in FIG. 5, in some embodiments, the input module 110 of the system 100 is configured to receive an input from an input device 194. In the illustrated embodiment, the input device 194 is a scanner that is configured to scan printed information (such as information printed on a piece of paper) and provide such information to the input module 110 of the system 100. For example, in some embodiments, the scanner 194 is configured to scan a lineup sheet or card (or other printed materials that include the lineups of a baseball or softball game) and provide such information (the lineups) to the input module 110 of the system 100. In other embodiments, the input device 194 is another type of device that is configured to provide printed information to the input module 110 of the system 100. In some embodiments, the input device 194 includes optical character recognition capabilities.

In some embodiments, the input device 194 is wired to the system 100 and is configured to communicate or provide input information to the input module 110 via a wire. For example, in some embodiments, the input device 194 is a scanner or optical member that is integral with the system 100 or integral with a device or housing that houses the system 100. In other embodiments, the input device 194 is configured to wirelessly communicate with the system 100 and the input module 110. For example, in some embodiments, the input module 194 is configured to provide information to the input module 110 via a Bluetooth, an RF, or another wireless connection.

In some embodiments, one, two, or more than two (such as three, for or more) input devices may be used with the system 100. For example, in some embodiments, a touch screen, a radar gun and a stop watch may be used to communicate with and provide input to the system 100. In some embodiments, different people who are observing the game may be using the various input devices to provide information to the system 100. For example, in some embodiments, one person may be using the touch screen to identify pitch location, while another person is using the radar gun to track and clock the speed of the pitch, while a third person is clocking the time it takes the pitcher to deliver the ball to the batter using a stop watch. In such an embodiment, the system 100 is configured to receive all of the input, to synchronize such input, and store such input information. For example, in some embodiments, the synchronization may be accomplished by the timing of the information provided to the system 100. For example, in some embodiments, the synchronization may occur in real time as the information is input into the various input devices. In another embodiment, the information may be provided to the system 100 with a time stamp or other type of indication of time. The system 100 may be configured to use such timing information to synchronize the information of the various input devices at a time after the completion of the athletic performance or game (for example, when a wifi or other network system is available to facilitate the synchronization).

In other embodiments, a different type of synchronization may be used by the system 100 to synchronize the information received from the various input devices. For example, in some embodiments, the synching may occur as the devices are communication or otherwise providing real time game information to the system 100. In other embodiments, the input devices may store the information collected during a game and transmit the information to the system 100 at the conclusion of the game (or at some time after the conclusion of the game). For example, if the game is being played at a location where there is not wi-fi service or other type of connectivity, the input devices may communicate the collected data to the system once there is a connection, wireless or wired connection, to the system 100.

In some embodiments, more than one input device of the same type may be used. For example, in one embodiment, a first touch screen may be used by one person who is observing the game to input the location of each pitch. A second touch screen may be used by a second person who is observing the game to input the type of each pitch. In such embodiments, the input devices are configured to communicate with the system 100 to provide the information to the system 100 and the system 100 is configured to synchronize the information received from the various input devices.

In some embodiments, other devices such as other input devices may be used in connection with the system 100. For example, in one embodiment, a camera such as a video camera may be used to collect video data of the game. For example, in some embodiments, a video camera may be used to record or video the pitcher's actions and motions during the game. This video data may be communicated to and stored by the system 100. In some embodiments, the video data may then be synchronized with the other data that is provided to the system 100 (such as pitch type, pitch location, and pitch velocity). In such embodiments, the user or the pitcher may then review the video while seeing or receiving from the system 100 the pitch data. This may allow the user or the pitcher to view a mechanics or delivery problem and see the results of the problem (such as poor pitch location or poor pitch velocity).

The calculation module 120 is operatively coupled to the input module 110. The calculation module 120 is configured to receive information from the input module 110. For example, in some embodiments, the calculation module 120 is configured to receive the information regarding an athletic event or athletic performance that is provided to the input module 110.

The calculation module 120 is configured to collect and manipulate the data or information that it receives from the input module 110. For example, in some embodiments, calculation module 120 is configured to collect, collate, sort, and/or organize the data or information that it receives from the input module 110. For example, in some embodiments, the calculation module 120 collects and records how many fastballs a pitcher throws during a baseball game. In other embodiments, the calculation module 120 is configured to collect and record other information such as how many first pitch strikes a pitcher throws during a baseball game, how many curveballs a pitcher throws during a baseball game, and/or how many strikes and balls a pitchers throws during a baseball game.

In some embodiments, the calculation module 120 is configured to collect, collate, sort, or organize pitching oriented statistics, opponent batting statistics, and outcome oriented statistics. For example, in some embodiments, the pitching oriented statistics include data when the pitcher is in the windup, data when the pitcher is in the stretch, percentage of pitches by location, percentage of pitches by pitch type, percentage of type of pitch thrown to each pitch location, percentage of first pitch strikes, type of first pitches to each batter, percentage of pitches thrown while ahead in the count, percentage of pitches thrown while behind in the count, ball to strike ratio, tracking of leveraged pitches (as described in more detail below), average velocity by pitch type, velocity differential between pitch types, and predictability or probability of pitches (as described in more detail below). In some embodiments, the opponent batting statistics include total batters faced, total singles, total doubles, total triples, total homeruns, number of runs batted in, number of intentional base on balls, number of times caught stealing, opponent batting average, opponent on base percentage, and opponent slugging percentage. In some embodiments, the outcome oriented statistics include number of wins, number of losses, win percentage, loss percentage, earned run average, number of games played, number of games started, number of complete games, number of shutouts, number of saves, number of innings pitched, number of hits allowed, number of runs allowed, number of earned runs, number of home runs allowed, number of walks, number of strike outs, number of batters faced, number of walks and hits as compared to innings pitched (WHIP), number of strikeouts per nine innings, ratio of strikeouts to walks, number of home runs allowed per nine innings, and number of double plays induced.

The system 100 may be configured to track leveraged pitches or pitches that are most likely to result in an out or a positive result for the pitcher. For example, in some embodiments, the system 100 may be configured to monitor, track, or record pitch locations or pitch types that are particularly successful for a user or a pitcher. Additionally, the system 100 may be configured to monitor, track, or record pitch location and pitch types that are particularly successful for a user or a pitcher under specific game circumstances, such as the count to a batter or whether the pitcher is pitching from the windup or the stretch position. Accordingly, a pitcher with a great fastball (or a fastball with a high velocity) might have more locations within the pitch zone that are likely to be successful than a pitcher with an average or below average fastball. In other words, the room for location error may be greater for the pitcher with the better fastball.

In some embodiments, the system 100 may be configured to track or monitor the predictability or probability of pitches. For example, a user or a pitcher may be able to review a report provided by the system 100 and observe that the user or the pitcher is throwing a high percentage of low fastballs when ahead in the count or that the user or pitcher is throwing a high percentage of off-speed pitches when ahead in the count. Having this information the user or pitcher may be able to choose to throw pitches that differ from previous tendencies to avoid being predictable.

In some embodiments, external variable, such as home games, road games, weather, umpires, game time, and the ballpark characteristics are also collected, sorted, or organized by the calculation module 120. In some embodiments, the data collected, collated, sorted or organized by the calculation module 120 may be stored (either locally or at a remote location, as will be described in more detail below), for each batter, game, season, and career of a player.

In other embodiments, the calculation module 120 is configured to rank or rate an athletic performance. For example, in some embodiments, the calculation module 120 is configured to provide a ranking or a skill level of a baseball or softball pitcher based on the data of one or more pitching performances received by the input module 110.

In some embodiments, the calculation module 120 is configured to compare the information or the data regarding a pitching performance as received by the input module to standards for different skill levels. Based on the comparisons of the information or data to the standards, a skill level may be determined for a pitcher. In some embodiments, the calculation module 120 is provided with the standards for the various skills at the various levels of play that should be used. In some embodiments, the standards that the calculation module 120 will use may be modified are adjusted by the user of the system 100. For example, in some embodiments, a coach or a parent may provide the standards or goals to the calculation module 120 of the system 100. In such embodiments, the coach or the parent may indicate what the standards or minimum skill level is for the level of play.

For example, in some embodiments, the calculation module 120 is configured to determine a skill level of a pitcher for each of a plurality of specific skills based on a comparison to standards for various skill levels. In other words, the calculation module 120 is configured to receive the information input into the system 100 via the input module 110 and calculate or tabulate various statistics for the athletic performance or performances. Those statistics can then be compared to standards or minimums required for a given level of baseball or skill level.

For example, for a youth or little league pitcher, the calculation module 120 may be configured to calculate or determine a skill level of a pitcher in the following skills: velocity, location of pitches (such as down in the strike zone and away form the middle of the plate or strike zone), ability to throw off-speed pitches for strikes, and ability to forgive errors by teammates. FIG. 6 is an example of an output that may be provided to the user by the output module 130, as described in further detail below. As illustrated in FIG. 6, the pitcher's executed skill level is shown in a bar chart as compared to the minimum skill level required for that level of baseball. Specifically, the pitcher's executed level in each of the skills is provided or output to the user of the system 100.

For a high school baseball player, the calculation module 120 may be configured to calculate or determine a skill level of a pitcher in the following skills: velocity, first pitch strikes, pitch location (such as down in the strike zone and away from the middle of the plate), ability to change speeds, ability to pitch in leveraged counts (such as being ahead in the count to batters), ability to pitch when behind in the count, and ability to get out of jams and/or avoid big innings FIG. 7 is an example of an output that may be provided to the user by the output module 130, as described in further detail below. As illustrated in FIG. 7, the pitcher's executed skill level is shown in a bar chart as compared to the minimum skill level required for that level of baseball (high school level). Specifically, the pitcher's executed level in each of the skills is provided or output to the user of the system 100.

For a college baseball player, the calculation module 120 may be configured to calculate or determine a skill level of a pitcher in the following skills: velocity, first pitch strikes, pitch location (such as down in the strike zone and away from the middle of the plate), ability to change speeds or ball movement, ability to pitch in leveraged counts (such as being ahead in the count to batters), ability to pitch when behind in the count, ability to pitch in an unpredictable fashion, ability to get batters to swing at pitches outside of the strike zone, and ability to get out of jams and/or avoid big innings

For a professional baseball player, the calculation module 120 may be configured to calculate or determine a skill level of a pitcher in the following skills: velocity, first pitch strikes, pitch location (such as down in the strike zone and away from the middle of the plate), ability to change speeds or pitch movement, velocity differential (difference between speed or velocity of fastball and speed or velocity of an off-speed pitch), ability to pitch in leveraged counts (such as being ahead in the count to batters), ability to pitch when behind in the count, ability to be unpredictable as to location of pitch, ability to get batter to swing at pitches outside of the strike zone, ability to pitch with conviction, ability to get ground ball or fly ball outs, and ability to get out of jams and/or avoid big innings

As described above, in some embodiments, a user may provide the standards or minimums that should be used for each of the above skills (at each of the levels of play). For example, a college coach at a division I college may have a different set of requirements or goals for his or her pitchers than a college coach at a division III college might have. Accordingly, in some embodiments, the standards or minimums that will be used as a metric for the particular performance may be set or varied by the user and used by the system 100 to compare to the performance of the pitcher.

In some embodiments, the input module 110 of the system 100 is configured to receive the standards that should be used for the various skills from the user of the system 100. In some embodiments, the system 100 allows a user to set different standards for each type of pitcher, such as a left handed pitcher and a right handed pitcher. For example, a coach may not require or desire that a left handed pitcher have as high of a fast ball pitch velocity as a right handed pitcher.

Additionally, in some embodiments, a user, such as a coach or parent, may add skills that should be tracked or used in the comparison by the calculation module 120. For example, if a little leaguer would like to track and know his ability to throw first pitch strikes, that skill can be added to the skills that are monitored for a youth our little league pitcher. Also, if a user of the system 100 would like to monitor or track a different skill, such as ability to pitch inside to batters, that skill can be added to the calculation module 120 and will then be tracked and the results can be provided as an output of the system 100.

In some embodiments, the calculation module 120 is configured to calculate or determine an overall skill level of a particular pitcher based on one or more pitching performances. For example, in some embodiments, the calculation module determines the overall skill level of a pitcher based on the skills of the pitcher as compared to the standards for those skills at various levels.

In some embodiments, the calculation module 120 is configured to give more weight to some skills than other skills of a pitcher when calculating or determining the overall skill level of a pitcher. For example, in some embodiments, the calculation module 120 is configured to base the overall skill level of a pitcher based on the above skills and how the pitcher compares in each skill to the standards or minimums. For example, in some embodiments, the system 100 may observe the average statistics for various levels of play. Specifically, the system 100 may recognize that the average velocity of a college pitcher is 85 miles per hour. That standard or average may be used by the system 100 to compare the data of other college level pitchers. In some embodiments, the system 100 is configured to provide a percentile ranking of a skill to the user or the pitcher. For example, the system 100 may be configured to provide an indication to the user or the pitcher the velocity of his or her fastball is in the 45^(th) percentile of all college pitchers. In some embodiments, the system 100 is configured to provide ranking or percentile information for all of the various skills of the pitcher that are tracked or input into the system 100.

In some embodiments, the calculation module 120 is configured to calculate an overall skill level of a pitcher. For example, in some embodiments, the calculation module 120 is configured to calculate or determine an overall skill level of a pitcher based on various statistics of the pitcher.

For example, in one embodiment, the calculation module 120 is configured to determine an overall skill level of a pitcher based on physical and mental performances of the pitcher. In some embodiments, a type A (physical) score may be determined and a type B (mental) score may be determined. The two scores may then be averaged to determine the overall score of the pitcher. The scores (the type A score and the type B score) may be calculated or determined for any period of time. For example, the scores (the type A score and the type B score) may be calculated or determined for a particular game, a season, or a career. The ratings or scores are based on 100 as the top score for both the type A score and the type B score.

The following physical statistics may be used by the calculation module 120 to determine the type A score: ratio of strikes to balls, number or pitches per out, ratio of walks to strikeouts, number of total bases per out, and number of earned runs per out. In one embodiment, the type A score is can be determined using the following formula:

A=(number of strikes/number of pitches−0.3)×5

B=(number of outs/number of pitches−0.15)×20

C=2−(number of walks/number of strikeouts) Note: if number of strikeouts=0, then C is 0

D=(number of outs/number of total bases−1)×2

E=2−(number of earned runs/number of outs) Note: if number of outs=0, then E is 0

(A+B+C+D+E)×10=Type A Score

Note: A, B, C, D, and E must be between 0 and 2. If any of them are lower than 0 they are given a 0 and if any of them are greater than 2, they are given a 2.

The following mental statistics may be used by the calculation module 120 to determine the type B score: percentage of first pitch strikes, number of first batters walked per inning, opponents batting average with runners in scoring position and 0 outs, opponents batting average with runners in scoring position and 1 out, and opponents batting average with runners in scoring position and 2 outs. In one embodiment, the type B score can be determined using the following formula:

A=(number of first pitch strikes/number of first pitches−0.5)×10

B=2−(number of first batter walks or hits/first batters×3)

C=2−(number of hits allowed with runners in scoring position/number of batters faced with runners in scoring position×5); Note: with 0 outs

D=2−(number of hits allowed with runners in scoring position/number of batters faced with runners in scoring position×5); Note: with 1 out

E=2−(number of hits allowed with runners in scoring position/number of batters faced with runners in scoring position×5); Note: with 2 outs

(A+B+C+D+E)×10=Type B Rating

Note: A, B, C, D, and E must be between 0 and 2. If any of them are lower than 0 they are given a 0 and if any of them are greater than 2, they are given a 2.

As illustrated in FIG. 1, the system includes an output module 130. The output module 130 is configured to provide an output to a user of the system 100. As described above, the output module 130 may be configured to provide an output, such as an output related to an athletic performance to a user. Specifically, in some embodiments, the output module 130 is configured to provide the outcome or determinations made by the calculation module 120 to the user of the system 100.

In some embodiments, the output module 130 includes a display screen, such as a liquid crystal display or any other type of visual display screen. In such embodiments, the output module 130 is configured to provide the output via the display screen. In other embodiments, the output module 130 includes a printer and is configured to provide a printed output to the user of the system 100.

In some embodiments, the calculation module 120 is configured to calculate the number of times or the percentage of times the pitcher was ahead in the count at the end of a batter's at bat. Knowing this, the pitcher may be able to determine if he or she was executing during the game but was beat or gave up hits due to exceptional hitting or if the pitcher's performance contributed to the good hitting (for example, if the pitcher was pitching from behind in the count frequently during the game). In some embodiments, the calculation module 120 is also configured calculate or determine the success rate of the pitcher when behind in the count and when ahead in the count. For example, the calculation module 102 may be configured to calculate or determine that a pitcher pitched from behind in the count 22 percent of the time and had an 86 percent success rate when working from behind in the count. Further, the calculation module 120 may be configured to determine or calculate the type of pitch or location of the pitch that was most or least successful for a pitcher when pitching from behind or when pitching from ahead in the count. For the purposes of this application, a pitcher is said to be pitching ahead in the count when the batter has more strikes and balls. The pitcher is said to be pitching from behind in the count when the batter has more balls than strikes.

In some embodiments, the output module 130 (which is described in more detail below) is configured to provide an output to the user that indicates how many outs the pitcher attained while pitching ahead in the count. The output module 130 may also be configured to display or indicate to the user or pitcher the count, the location, the pitch type, and the result for each batter faced during the game. This information may allow a user or a pitcher to determine that a particular pitch (for example, a high fastball) typically or frequently gets hit hard by a batter. This information may also allow a user or a pitcher to identify types of pitches and/or pitch locations that should be worked on or practiced in non-game situations.

In some embodiments, the output module 130 is configured to provide all of the data that was entered during the game to the user or the pitcher. For example, the output module 130 may be configured to provide information such as percentages of locations thrown to, percentages of types of pitches thrown, percentages or strikes thrown, and types of outcomes of the batters (such as number of singles allowed, number of doubles allowed, etc.). In some embodiments, the output module 130 is configured to provide the following information to the user or the pitcher: specific pitches, pitch locations, velocity (per specific pitch), information from when the pitcher was in the wind-up, information from when the pitcher was in the stretch, pitch information from when runners were in scoring position, pitch information from when runners were on base, pitch information from when no runners were on base, pitch information from when per inning, number of pitches, pitch information from when at home or on the road, pitch information based on a batter, pitch information from game, pitch information vs. a specific team, pitch information from a season, or career, pitch information in different types of weather, pitch information by time of day or night, pitch information by specific day, week or month, pitch information from wins, pitch information from loses, earned run average, strikeouts, mental attributes, physical attributes, success rate with each pitch count (for example, 0-1, 2-0, 1-1), skill level of pitcher, age, first pitch strikes percentage, number of walks, WHIP, time of delivery to plate when in a stretch, success rate in wind-up or stretch, pitcher rating per inning, game, season, career, number of strikeouts per game, number of walks per game, number of homeruns allowed per game, number of games started, number of games played, number of complete games, number of shutouts, number of saves, number of save opportunities, number of innings pitched, number of s allowed, number of runs allowed, number of earned runs allowed, number of intentional walks allowed, number of stolen bases allowed, number of runners caught while trying to steal a base, number of pick offs, number of balks, number of wild pitches, batting average of the hitters against the user or pitcher, success or statistics vs. right handed batters, success or statistics vs. left handed batter, success or statistics of the pitcher on a grass surface, success or statistics of the pitcher on a turf or artificial surface, success or statistics when pitching with runners in scoring position, success or statistics when pitching with runners in scoring position and two outs, success or statistics when pitching in late inning pressure, success or statistics when pitching in late inning pressure and with runners on base, success or statistics when pitching late inning pressure and with 0, 1 or 2 outs, success against leadoff batters (such as batters to lead off an inning such as the 1st inning, 2nd inning, 3rd inning, 4th inning, 5th inning, 6th inning, 7th inning, 8th inning, or 9th inning), success or statistics when pitching against the first 9 batters faced during a game, success or statistics when pitching against the second 9 batters faced during a game, success or statistics when pitching against the third 9 batters (or later) in a game, success or statistics when pitching with less than 5 days rest, success or statistics when pitching with 5 days rest, success or statistics when pitching with more than 5 days rest, success or statistics in last 5 appearances, success or statistics in specific ballparks or stadiums.

In some embodiments, the system 100 is configured to provide information to the user regarding what pitch would likely be the best pitch to throw to a batter in a given situation. For example, in some embodiments, a coach or other user may be entering information into the system 100 regarding the pitches that a pitcher is throwing. The system 100 may be able to analyze the data and provide to the user or coach a suggestion or a set of suggestions for what the next pitch should be. For example, in some embodiments, the system 100 is configured to provide a set of 3 suggested pitches for what the next pitch during the game should be. In some embodiments, the suggested pitches include a pitch type (such as fastball, curveball, change-up, etc.) and a location (such as low and inside, high and outside, low and out of the strike zone, etc.).

In some embodiments, the system 100 is configured to determine the suggested pitches based on the pitcher's strengths (such as, for example, his best pitch type), the pitcher's accuracy, the pitcher's performance on that day or the pitcher's recent performances (5 most recent games), the pitcher's fatigue level, the batter's tendencies, and the game situation (such as the inning, the number of runners on base, the count to the batter, how many outs there are in the inning, the score of the game, etc.). In other embodiments, the system 100 is configured to use a different set or different factors to determine what the next pitch should be.

In some embodiments, the user or coach may receive the suggested pitches (pitch type or pitch type and location) and may choose to accept the suggestion and signal to the pitcher or catcher to throw the suggested pitch or may choose to have the pitcher throw a different pitch.

In some embodiments, the system 100 may be used to facilitate recruiting or scouting of a player. For example, in some embodiments, the system 100 may be used to rank or compare players. In some embodiments, an overall ranking of a player may be provided based on the all of the users of the system 100.

In another embodiment, a player may upload grades, letters of recommendation, a physical description, and other personal information to the system 100. For example, the input module 110 may be configured to receive the uploaded grades (report cards) and letters of recommendations. The system 100 or the output of the system 100 may be used by college or other coaches to review the statistics and other aspects of a particular recruit (grades and letters of recommendation). In such an embodiment, the college or other coaches may access the game information of the particular recruit to assess velocity of pitches, pitch locations, etc. The college or other coaches may be able to review how the pitcher has developed skills over several years of the player's career (i.e., how velocity or control has increased or improved over time).

In some embodiments, the system 100 may be used to track or monitor umpire tendencies. For example, in some embodiments, the system 100 may be able to receive the identity of the umpire for each game (such as via the input module 110). The data received may then be used to track or monitor the tendencies of the umpire. For example, some umpires might call lots of strikes on high fastballs while other umpires might call lots of outside pitches as strikes. The system 100 may be able to track, monitor, and store such information, which may be useful the next time a particular umpire is calling the team's game.

In some embodiments, the system 100 may be used to track an individual's performance, such as a pitcher's performance during a game, a season, or a career. In some embodiments, the system 100 may also be configured to track a team's performances. For example, in some embodiments, the statistics of all of the pitchers of a team may be aggregated or added together. The pitching performance of the team as a whole may then be output and reviewed by the user. In some embodiments, the pitchers on a team may be divided up into different categories, such as starting pitchers and relief pitchers. In such embodiments, the system 100 may be configured to aggregate the statistics of the different groups of pitchers and provide the totaled statistics to the user for each group. For example, in such embodiments, a coach may be able to monitor the performances of his starting pitchers and his relief pitchers separately.

FIG. 8 is a schematic illustration of a system 200 that may be used to track and analyze athletic performances. Similar to system 100, the system 200 includes an input module 210, a calculation module 220, and an output module 230. The system 200 also includes a transmission module 240 and a request module 250.

The transmission module 240 is configured to communicate with a storage member SM that is disposed apart or away from the system 200. For example, in some embodiments, the transmission module 240 is configured to communicate with the storage member SM via the Internet, a network, or other communication system. The storage member SM may be any type of storage device. For example, the storage device may be a computer memory or a server or the like. The storage member SM is configured to store the information that is provided to it by the transmission module 240.

Specifically, in some embodiments, the transmission module 240 is configured to provide or send data associated with an athletic performance to the storage member SM. For example, the transmission module 240 may be configured to send all of the data input to the system 200 regarding a pitching performance to the storage member SM. In other embodiments, the transmission module 240 may be configured to only send a subset or selected pieces of information to the storage member SM.

The storage member SM is configured to store the information that is provided to it and to transmit back such information to the transmission module 240 of the system 200 as requested. For example, pitching data for several games may be transmitted to the storage member SM at the completion of each game. Then the transmission module 240 may request from and receive the information that was previously provided to the storage member SM. Accordingly, in such an embodiment, portion of a season or a season's worth of game data may be received from the storage member SM and then analyzed by the calculation module 220. A pitcher may then be able to review or receive his skill level for the various skills or abilities over a period of time, such as a week, a month, a season, or a career.

Additionally, in some embodiments, the transmission module 240 is configured to transmit the outcome or the data calculated by the calculation module 220 to the storage member SM. In such an embodiment, a user of the system 200 may be able to track the progress made in the various skills or abilities. For example, a user may be able to see or monitor how the skill level of the various skills or abilities has changed over time (game to game, season to season, etc.).

The request module 250 is configured to receive a request for data from a user and retrieve and provide such information to the user of the system 200. For example, a user may request a statistic or a piece of information regarding an athletic performance that is stored in the system 200 or on the storage member SM. The request module 250 is configured to receive such request for the statistic, locate such data, and provide it to the user. For example, in some embodiments, a user may desire to know how many pitches the pitcher has thrown this year. That request may be received, calculated, and provided to the user via the request module 250.

In some embodiments, a running data associated with a player is kept and available for requesting and viewing. For example, a player card may be kept or stored on the system 200. The player card may include any number of pieces of information regarding the athletic performances of that player. For example, the player card may include the number of games played, the win/loss record of the player, the earned run average of the player, etc. The user may request to view and be provided with the player card. In some embodiments, the request to view and the provision of the player card information is accomplished via the request module 250.

In some embodiments, the statistics of a user or pitcher may be transferred or sent to another team. For example, as a player grows from high school to college, the statistics or file that the pitcher has accumulated in high school may be sent or transferred to the college team. Accordingly, coaches and supervisors of the college team would be able to access and review the statistics that the player accumulated during high school to better understand and assist in the player's development.

FIG. 9 is a flow chart for a method 300 according to an embodiment of the invention. At 310, an input associated with an athletic event is received. For example, an input or information associated with a pitching performance may be received. In some embodiments, the input is received via a touch screen. In other embodiments, the input is received via another input or data device, such as a radar gun, a stop watch, a scanner, or any other input mechanism.

At 320, the athletic performance is evaluated. In some embodiments, the athletic performance is evaluated by comparing statistics or facts from the performance with standards or minimums for a given level of play. For example, in some embodiments, several skills or abilities of the athlete are compared against standards for such skills or abilities for a specific level of play.

At 330, a visual display associated with the athletic performance is provided or triggered. In some embodiments, the display is provided on an electronic or computer type screen. In other embodiments, an output such as a print out is provided to the user.

In some embodiments, at 340, the data associated with the athletic performance is transmitted to a storage location. In some embodiments, the storage location is located remote from the system. For example, in some embodiments, the storage location includes a server or other type of memory device that is configured to store the information or data associated with the athletic performance.

In some embodiments, the data associated with the athletic performance is transmitted to the storage location via the Internet or other networking system. In some embodiments, the storage location is configured to store the information associated with an athletic performance and provide such information to the system upon request. In such embodiments, data or information regarding prior athletic performances (such as a season's worth of pitching performances) may be analyzed and/or reviewed.

Implementations of the various techniques described herein may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Implementations may implemented as a computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable storage device (computer-readable medium) or in a propagated signal, for processing by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. A computer program, such as the computer program(s) described above, can be written in any form of programming language, including compiled or interpreted languages, and can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be processed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.

Method steps may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Method steps also may be performed by, and an apparatus may be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).

Processors suitable for the processing of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. Elements of a computer may include at least one processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer also may include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory may be supplemented by, or incorporated in special purpose logic circuitry.

To provide for interaction with a user, implementations may be implemented on a computer having a display device, e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user ca provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.

Implementations may be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation, or any combination of such back-end, middleware, or front-end components. Components may be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (LAN) and a wide area network (WAN), e.g., the Internet.

While certain features of the described implementations have been illustrated as described herein, many modifications, substitutions, changes and equivalents will now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the scope of the embodiments. It should be understood that they have been presented by way of example only, not limitation, and various changes in form and details may be made. Any portion of the apparatus and/or methods described herein may be combined in any combination, except mutually exclusive combinations. The embodiments described herein can include various combinations and/or sub-combinations of the functions, components and/or features of the different embodiments described. 

What is claimed is:
 1. A computer system including instructions recorded on a non-transitory computer-readable storage medium and readable by at least one processor, the system comprising: an input module configured to receive an input associated with an athletic performance; a data calculation module configured to evaluate the athletic performance; and a display module configured to provide a visual display associated with the evaluation of the athletic performance.
 2. The computer system of claim 1, further comprising: a transmission module configured to transmit data associated with the athletic performance to a storage location.
 3. The computer system of claim 1, further comprising: a transmission module configured to receive data associated with prior athletic performances.
 4. The computer system of claim 1, further comprising: a transmission module configured to receive data associated with prior athletic performances, the display module being configured to provide a visual display associated with the data associated with the prior athletic performances.
 5. The computer system of claim 1, wherein the input associated with the athletic performance includes a type of baseball pitch and a location of a baseball pitch.
 6. The computer system of claim 1, wherein the input module is configured to receive the input via a touch screen.
 7. The computer system of claim 1, wherein the input module is configured to receive the input from a data device.
 8. The computer system of claim 1, wherein the input module is configured to receive the input from a data device via a wireless connection.
 9. The computer system of claim 1, wherein the input module is configured to receive input from a first data device and a second data device different than the first data device.
 10. The computer system of claim 1, wherein the data calculation module is configured to compare the athletic performance to a baseline athletic performance.
 11. A computer-implemented method for causing at least one processor to execute instructions recorded on a computer-readable storage medium, the method comprising: receiving an input associated with an athletic performance; evaluating the athletic performance; and providing a visual display associated with the evaluation of the athletic performance.
 12. The computer implemented method of claim 11, further comprising: transmitting data associated with the athletic performance to a storage location.
 13. The computer implemented method of claim 11, further comprising: receiving data associated with prior athletic performances from a storage location.
 14. The computer implemented method of claim 11, further comprising: receiving data associated with prior athletic performances; and providing a visual display associated with the data associated with the prior athletic performances.
 15. The computer implemented method of claim 11, wherein the input associated with the athletic performance includes a type of baseball pitch and a location of a baseball pitch.
 16. The computer implemented method of claim 11, wherein the input is received via a touch screen.
 17. The computer implemented method of claim 11, wherein the input is received from a data device.
 18. The computer implemented method of claim 11, wherein the input is received from a data device via a wireless connection.
 19. The computer implemented method of claim 11, wherein the input is received from a first data device and a second data device different than the first data device.
 20. A computer program product, the computer program product being tangibly embodied on a computer-readable medium and comprising instructions that, when executed, are configured to cause at least one processor to: receive an input associated with an athletic performance; evaluate the athletic performance; and provide a visual display associated with the evaluation of the athletic performance. 